Skip to main content

Programmare un Robot con Pick&Place

Vedi il Robotics_PickAndPlace.project e Robotics_PickAndPlace_without_Depictor.project progetti di esempio nella directory di installazione di CODESYS sotto ..\CODESYS SoftMotion\Examples.

Il Robotics_PickAndPlace.project progetto richiede il CODESYS Depictor Pacchetto Depictor da installare. Questo progetto mostra la cinematica in un'animazione 3D. Il progetto Robotics_PickAndPlace_without_Depictor.project mostra una forma semplificata della sequenza in una schermata di visualizzazione.

Questo capitolo tratta solo gli oggetti che sono rilevanti per SoftMotion.

L'esempio è costituito da un treppiede, una tavola rotante e un trasportatore.

La cinematica preleva un anello che si trova sulla tavola rotante. Durante il prelievo, la piastra portautensili della cinematica si muove in sincronia con la tavola rotante.

Quindi l'anello viene posizionato su un cono che si trova su un nastro trasportatore. Durante il posizionamento, la cinematica si muove in sincronia con il nastro trasportatore.

Sulla schermata di visualizzazione sono presenti due pulsanti per il controllo della sequenza. Quando premi il Auto pulsante, gli squilli vengono impostati automaticamente. In caso contrario, il Giocare a viene visualizzato il pulsante per posizionare l'anello.

_sm_img_example_robotics.png

Struttura del progetto

  • CODESYS SoftMotion Controllore

  • Gruppo di assi Treppiedi: Il gruppo assi definisce la cinematica e la mappatura sui singoli assi Treppiede1, Treppiede2, e Treppiede3.

  • DepictorCalcoli (PRG), Ambiente (PRG), Anello (FB): Programmi per il controllo dell'intera sequenza e visualizzazione. Queste POU non sono rilevanti per la comprensione dei blocchi PLCopen, ad eccezione della definizione del sistema di coordinate del prodotto (PCS_1 e PCS_2).

  • Robot (PRG): Programma per il controllo delle sequenze di movimento. Una descrizione dettagliata si trova nel paragrafo successivo.

  • Visualizzazione: Visualizzazione animata per chiarire la sequenza.

  • Treppiede1, Treppiede2, Tripode3: assi lineari del treppiede.

  • DriveRotaryTable: Asse per la tavola rotante.

  • DriveNastro trasportatore: Asse per il nastro trasportatore.

Struttura del programma di sequenza Robot (PRG)

Il Robot (PRG) il programma viene eseguito in cicli. A questo punto, i singoli passaggi vengono eseguiti a seconda del state. Alla fine di un programma, i richiami di tutti i blocchi funzione utilizzati sono pronti per il comando di movimento.

  • Vengono attivati i singoli assi del treppiede (blocchi funzione pwA1, pwA2, e pwA3 di tipo MC_Power).

  • CASE 0: Attendere che gli assi partecipanti siano operativi.

  • CASE 10: Imposta le posizioni di riferimento; nelle applicazioni fisiche, l'homing viene eseguito in questa posizione (blocchi funzione spA1, spA2, e spA3 di tipo MC_SetPosition).

  • CASE 20: Posizionamento del sistema di coordinate macchina nel sistema di coordinate globali (blocco funzione setCoord di tipo MC_SetCoordinateTransform).

  • CASE 30: Rilascio del gruppo di assi (blocco funzione enable di tipo MC_GroupEnable.

    Attendi una risposta che il gruppo di assi abbia applicato tutti i valori.

  • CASE 40 a CASE 130: Applicazione Pick&Place: Tutti i movimenti sono comandati possibilmente con più istanze MC_MoveDirectAbsolute, MC_MoveDirectRelative, e MC_MoveLinear che sono chiamati in cicli. Un fronte in salita al Execute l'ingresso di queste POU in ogni stato porta all'emissione di un nuovo comando di movimento in cui l'uscita bCommandAccepted indica il successo del processo. Una tipica catena di comandi risulta dall'interrogazione di questa uscita prima del successivo comando di movimento.

Blocchi funzione MC_TrackConveyorBelt e MC_TrackRotaryTable

Il blocco funzione MC_TrackRotaryTable, che si trova nel modulo funzione Ring viene chiamato, viene utilizzato per determinare il sistema di coordinate della parte PCS_1. Questo sistema di coordinate viene impostato non appena un anello viene posizionato sulla tavola rotante.

L'origine del sistema di coordinate della tavola rotante RotaryTableOrigin è il punto medio della tavola rotante. L'asse Z è l'asse rotante della tavola rotante. Il PCS_1 viene ruotato attorno all'asse Z del sistema di coordinate della tavola rotante in funzione della variabile di ingresso RotaryTable. Poiché il gruppo di assi si sposta in PCS_1, segue la rotazione della tabella.

Con il blocco funzione MC_TrackConveyorBelt, che si trova nel modulo funzione Cone si chiama, il comportamento è analogo. Il PC (PCS_2) segue l'asse X del sistema di coordinate ConveyorBeltOrigin.